1) Field of the Invention
The present invention relates to an evaluation system for evaluating a target board which is produced for use with a microprocessor. The present invention also relates to an evaluation microcomputer as a constituent of an evaluation system for evaluating a target board which is produced for use with a microprocessor.
2) Description of the Related Art
In order to develop a system including a microprocessor, it is necessary to check whether or not the microprocessor matches with peripheral devices and the like, and whether or not firmware normally operates, where the firmware is stored in, for example, a ROM (Read Only Memory). Further, in order to make the above checks, it is necessary to monitor the internal state of the microprocessor and stop the operation of the microprocessor at an arbitrary location in the firmware. Therefore, conventionally, an evaluation device which can emulate the functions of the microprocessor and monitor the internal state of the microprocessor is produced, and connected to a board (hereinafter called a target board) on which a system required to be developed is mounted. Then, the above checks are made by sending instructions from a personal computer or the like to the evaluation device.
FIG. 8 is a diagram illustrating an example of a construction of an evaluation system for testing the microprocessor. The evaluation system of FIG. 8 comprises a target board 10, an evaluation microcomputer 12, an evaluation tool 14, and a personal computer 16.
The target board 10 is a printed circuit board on which a system to be developed is mounted. Specifically, a socket 10a into which a microprocessor is to be inserted, semiconductor devices, electronics parts, and the like are arranged on the target board 10.
The evaluation microcomputer 12 has the same functions as the microprocessor which is to be inserted into the socket 10a, and a function of monitoring a microprocessor. The evaluation microcomputer 12 is connected to the socket 10a through a cable 11 so that data can be exchanged between the target board 10 and the evaluation microcomputer 12. In addition, the evaluation microcomputer 12 is connected to the evaluation tool 14 through a cable 13. The evaluation microcomputer 12 receives and processes ROM data (firmware data to be stored in the ROM) and control signals from the evaluation tool 14, and sends to the evaluation tool 14 data obtained by the processing of the ROM data and the control signals.
The evaluation tool 14 generates the ROM data based on data supplied from the personal computer 16, and supplies the ROM data to the evaluation microcomputer 12. In addition, the evaluation tool 14 generates the control signals for controlling the evaluation microcomputer 12, and supplies the control signals to the evaluation microcomputer 12. Further, the evaluation tool 14 receives the data supplied from the evaluation microcomputer 12, and supplies the data to the personal computer 16.
The personal computer 16 supplies the ROM data and control signals for controlling the evaluation microcomputer 12, to the evaluation tool 14 through a cable 15. In addition, the personal computer 16 acquires and analyzes data collected by the evaluation microcomputer 12.
The operations of the conventional evaluation system of FIG. 8 are explained below.
A user manipulates the personal computer 16 so as to supply control signals to the evaluation microcomputer 12, change the operation mode of the microprocessor from an emulation mode to a debug mode, and adjust the setting to the environment of the target board 10. Specifically, the ROM area in the address space, a mask area of the ROM (i.e., an area of the ROM which cannot be used), and the like are set.
The emulation mode is a normal operation mode in which the evaluation microcomputer 12 supplies the ROM data to the microprocessor so that the microprocessor operates. The debug mode is an operation mode in which the internal state of the evaluation microcomputer 12 is set.
Next, the user manipulates the personal computer 16 so that the ROM data, which is to be debugged, is sent from the personal computer 16 to the evaluation tool 14, and is then supplied to the evaluation microcomputer 12. In the evaluation microcomputer 12, the microprocessor executes various types of processing and controls the respective portions of the target board 10, based on the ROM data supplied from the evaluation tool 14. At this time, the evaluation tool 14 monitors the internal state of microprocessor in the evaluation microcomputer 12, and supplies information on the internal state of microprocessor to the personal computer 16.
The personal computer 16 acquires the information on the internal state of microprocessor, which is supplied from the evaluation tool 14, at a predetermined timing (e.g., a timing of execution of a predetermined instruction), and displays the information in association with the ROM data. Thus, the user can make a judgement as to whether or not the ROM data is normally executed. When the ROM data is not normally executed, debugging can be performed by changing the ROM data.
Recently, microprocessors are mounted in mobile telephones and home electronics products, and it is necessary to check the operations of the microprocessors in the mobile telephones and home electronics products. However, often, the mobile telephones and home electronics products are suddenly powered off, and are thereafter powered again. It is necessary to check that the system normally operates even when the system is suddenly powered off, and is thereafter powered again.
Nevertheless, in the conventional evaluation systems, the power of the evaluation microcomputer 12 is supplied from the target board 10. Therefore, when the system is suddenly powered off, and is thereafter powered again, the data set in the evaluation microcomputer 12 is lost. Thus, when the system is powered again after the sudden power off, it is necessary to change the operation mode to the debug mode, set the data in the evaluation microcomputer 12 again, and return the operation mode to the emulation mode. Consequently, it takes excessive time to restart the system, and the operation on the restart cannot be monitored accurately.